<?php
class UsersEquiposOperativosController extends AppController {

	var $name = 'UsersEquiposOperativos';
	var $helpers = array('Access');
	
	/**
	 * 
	 * Lista usuarios_equipos_operativos filtrado por grupo y usuario
	 * @param unknown_type $group_id
	 * @param unknown_type $user_id
	 */
	function getlist($group_id =null, $user_id =null ) {
		if (!$group_id && !$user_id) {
			return $this->UsersEquiposOperativo->find('list');
		} else {
			return $this->UsersEquiposOperativo->find('first',
														array('fields'=>array('UsersEquiposOperativo.equipos_operativo_id'),
														 	  'conditions'=>array('UsersEquiposOperativo.group_id'=>$group_id, 
																 				  'AND'=>array('UsersEquiposOperativo.user_id'=>$user_id))));
		}
	}
	
	/**
	 * 
	 * Lista usuarios_equipos_operativos filtrado por el rol
	 * @param unknown_type $group_id
	 */
	function getlistbygroup($group_id =null) {
		if (!$group_id) {
			return $this->UsersEquiposOperativo->find('list',array('fields'=>array('UsersEquiposOperativo.id')));
		} else {
			return $this->UsersEquiposOperativo->find('list',array('fields'=>array('UsersEquiposOperativo.id'),
																 'conditions'=>array('UsersEquiposOperativo.group_id'=>$group_id)));
		}
	}
	
	/**
	 * 
	 * Lista usuarios_equipos_operativos filtrado por el equipo operativo
	 * @param unknown_type $equipos_operativo_id
	 */
	
	function getlistbyequipooperativo($equipos_operativo_id =null) {
		if (!$equipos_operativo_id) {
			return $this->UsersEquiposOperativo->find('list',array('fields'=>array('UsersEquiposOperativo.id')));
		} else {
			return $this->UsersEquiposOperativo->find('list',array('fields'=>array('UsersEquiposOperativo.id'),
																 'conditions'=>array('UsersEquiposOperativo.equipos_operativo_id'=>$equipos_operativo_id)));
		}
	}
	

	function index() {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		$this->UsersEquiposOperativo->recursive = 0;
		$this->set('usersEquiposOperativos', $this->paginate());
	}

	function view($id = null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$id) {
			$this->Session->setFlash(__('Invalid users equipos operativo', true));
			$this->redirect(array('action' => 'index'));
		}
		$this->set('usersEquiposOperativo', $this->UsersEquiposOperativo->read(null, $id));
	}

	function add() {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!empty($this->data)) {
			$this->UsersEquiposOperativo->create();
			if ($this->UsersEquiposOperativo->save($this->data)) {
				$this->Session->setFlash(__('The users equipos operativo has been saved', true));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('The users equipos operativo could not be saved. Please, try again.', true));
			}
		}
		$users = $this->UsersEquiposOperativo->User->find('list');
		$equiposOperativos = $this->UsersEquiposOperativo->EquiposOperativo->find('list');
		$groups = $this->UsersEquiposOperativo->Group->find('list');
		$this->set(compact('users', 'equiposOperativos', 'groups'));
	}

	function edit($id = null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$id && empty($this->data)) {
			$this->Session->setFlash(__('Invalid users equipos operativo', true));
			$this->redirect(array('action' => 'index'));
		}
		if (!empty($this->data)) {
			if ($this->UsersEquiposOperativo->save($this->data)) {
				$this->Session->setFlash(__('The users equipos operativo has been saved', true));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('The users equipos operativo could not be saved. Please, try again.', true));
			}
		}
		if (empty($this->data)) {
			$this->data = $this->UsersEquiposOperativo->read(null, $id);
		}
		$users = $this->UsersEquiposOperativo->User->find('list');
		$equiposOperativos = $this->UsersEquiposOperativo->EquiposOperativo->find('list');
		$groups = $this->UsersEquiposOperativo->Group->find('list');
		$this->set(compact('users', 'equiposOperativos', 'groups'));
	}

	function delete($id = null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$id) {
			$this->Session->setFlash(__('Invalid id for users equipos operativo', true));
			$this->redirect(array('action'=>'index'));
		}
		if ($this->UsersEquiposOperativo->delete($id)) {
			$this->Session->setFlash(__('Users equipos operativo deleted', true));
			$this->redirect(array('action'=>'index'));
		}
		$this->Session->setFlash(__('Users equipos operativo was not deleted', true));
		$this->redirect(array('action' => 'index'));
	}
}
?>